#ifndef GY_GRADIENTCOMBOBOX_H
#define GY_GRADIENTCOMBOBOX_H

#include "GY_ControlLibrary_global.h"
#include <QComboBox>
#include <QHBoxLayout>
#include <QLabel>

struct GradientData
{
    QString name;
    QString startcolor_r;
    QString startcolor_g;
    QString startcolor_b;
    QString startcolor_a;
    QString endcolor_r;
    QString endcolor_g;
    QString endcolor_b;
    QString endcolor_a;
    QString startpoint_x;
    QString startpoint_y;
    QString endpoint_x;
    QString endpoint_y;
    QString extend;
    QString startradius;
    QString endradius;
    QString radial;
};

class GY_CONTROLLIBRARY_EXPORT GY_GradientComboBox : public QComboBox
{
    Q_OBJECT
public:
    explicit GY_GradientComboBox(QWidget *parent = nullptr);

    void addGradientDataItem(const QString &GradientName, GradientData* gradientData);

private:
    QLabel* addGradientWidget(GradientData* gradientData);

};

#endif // GY_GRADIENTCOMBOBOX_H
